package com.whminwei.edu.api.dc.client;

import com.whminwei.common.feign.decoder.FullHttpRspnConfig;
import com.whminwei.common.http.rspn.FullHttpResponse;
import com.whminwei.edu.api.dc.dto.feq.CommonFeq;
import com.whminwei.edu.api.dc.dto.fspn.other.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;

/**
 * @author zhangjq
 * @since 2024-08-11
 */
@FeignClient(name = "xzzg-pt-other-service", contextId = "datacenter-tch-res", configuration = FullHttpRspnConfig.class)
public interface DcOtherTchResClient {

    /**
     * 获取发明专利信息
     *
     * @return com.whminwei.common.http.rspn.FullHttpResponse<com.whminwei.edu.api.dc.dto.fspn.other.DcInventFspn>
     * @author zhangjq
     * @since 2024-08-11
     */
    @PostMapping("/datacenter/getInventInfo")
    FullHttpResponse<DcInventFspn> getInventInfo(CommonFeq feq);

    /**
     * 获取论著信息
     *
     * @return com.whminwei.common.http.rspn.FullHttpResponse<com.whminwei.edu.api.dc.dto.fspn.other.DcTreatiseFspn>
     * @author zhangjq
     * @since 2024-08-11
     */
    @PostMapping("/datacenter/getTreatiseInfo")
    FullHttpResponse<DcTreatiseFspn> getTreatiseInfo(CommonFeq feq);

    /**
     * 获取教科研项目信息
     *
     * @return com.whminwei.common.http.rspn.FullHttpResponse<com.whminwei.edu.api.dc.dto.fspn.other.DcScienceRspn>
     * @author zhangjq
     * @since 2024-08-12
     */
    @PostMapping("/datacenter/getScienceInfo")
    FullHttpResponse<DcScienceFspn> getScienceInfo(CommonFeq feq);

    /**
     * 获取获奖项目信息
     *
     * @return com.whminwei.common.http.rspn.FullHttpResponse<com.whminwei.edu.api.dc.dto.fspn.other.DcMatchFspn>
     * @author zhangjq
     * @since 2024-08-20
     */
    @PostMapping("/datacenter/getMatchInfo")
    FullHttpResponse<DcMatchFspn> getMatchInfo(CommonFeq feq);

    /**
     * 获取教师培训项目信息
     *
     * @return com.whminwei.common.http.rspn.FullHttpResponse<com.whminwei.edu.api.dc.dto.fspn.other.DcTrainingFspn>
     * @author zhangjq
     * @since 2024-09-02
     */
    @PostMapping("/datacenter/getTrainingInfo")
    FullHttpResponse<DcTrainingFspn> getTrainingInfo(CommonFeq feq);

    /**
     * 获取教师实践项目信息
     *
     * @return com.whminwei.common.http.rspn.FullHttpResponse<com.whminwei.edu.api.dc.dto.fspn.other.DcPracticeFspn>
     * @author zhangjq
     * @since 2024-10-22
     */
    @PostMapping("/datacenter/getPracticeInfo")
    FullHttpResponse<DcPracticeFspn> getPracticeInfo(CommonFeq feq);
}
